package main

import "fmt"

/*
func swap(a, b int)  {
    当我们传一个参数值到被调用函数里面时，实际上是传了这个值的一份copy，当在被调用函数中修改参数值的时候，调用函数中相应实参不会发生任何变化，因为数值变化只作用在copy上。
	temp := a
	a = b
	b = temp
	fmt.Println(a, b)

}
*/

func swap(pa, pb *int) {
	//  *int  为指针类型
	temp := *pa // *pa 为指针
	*pa = *pb
	*pb = temp
}
func main() {

	a := 100
	b := 200
	// & 为 变量所在内存地址，下方传入两个变量的地址
	swap(&a, &b)
	fmt.Println(a, b)
}
